#!/usr/bin/python

import sys
import dbus
import time
from optparse import OptionParser, make_option

bus = dbus.SystemBus()

manager = dbus.Interface(bus.get_object("org.bluez", "/"), "org.bluez.Manager")

option_list = [
		make_option("-i", "--device", action="store",
				type="string", dest="dev_id"),
		]
parser = OptionParser(option_list=option_list)

(options, args) = parser.parse_args()

if options.dev_id:
	adapter_path = manager.FindAdapter(options.dev_id)
else:
	adapter_path = manager.DefaultAdapter()

service = dbus.Interface(bus.get_object("org.bluez", adapter_path),
						"org.bluez.Service")

if (len(args) < 1):
	print "Usage: %s <command>" % (sys.argv[0])
	print ""
	print "  addrecord <file>"
	sys.exit(1)

if (args[0] == "addrecord"):
	if (len(args) < 2):
		print "Need file parameter"
	else:
		f = open(args[1])
		record = f.read()
		f.close()
		handle = service.AddRecord(record)
		print "0x%x" % (handle)
		time.sleep(120)
	sys.exit(0)

print "Unknown command"
sys.exit(1)
